In many central processing units, a software controls over allocations of shared platform resources such as caches. Cache allocation technology (CAT) enables the software to partition the caches between multiple processes and allows cache capacity to be reserved for a process or a group of processes. CAT enables cache resource allocation and performance isolation based on priority of an application.